package com.pizzaria.bean;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import java.util.Date;


@Entity
@Table(name="funcionario", schema="pizzaria")
@SequenceGenerator(name = "funcionario_sequence", sequenceName = "funcionario_sequence")
public class Funcionario {
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY,generator="funcionario_sequence")
	@Column(name="id", nullable=true, updatable=false)
	private long id;

	@Column(name="nome", nullable=true)
	private String nome;

	@Column(name="rg", nullable=true)
	private String rg;

	@Column(name="cpf", nullable=true, unique=true)
	private String cpf;

	@Column(name="dt_nasc", nullable=true, columnDefinition="DATE")
	private Date dtNasc;

	@Column(name="telefone", nullable=true)
	private String telefone;

	@Column(name="celular", nullable=true)
	private String celular;

	@Column(name="endereco", nullable=true)
	private String endereco;

	@Column(name="numero", nullable=true)
	private String numero;

	@Column(name="compl", nullable=false)
	private String compl;

	@Column(name="cep", nullable=true)
	private String cep;

	@Column(name="cidade", nullable=true)
	private String cidade;

	@Column(name="cargo", nullable=true)
	private String cargo;

	@Column(name="salario", nullable=true)
	private float salario;


	public Funcionario() { }

	public Funcionario(long id,String nome,String rg,String cpf,Date dtNasc,String telefone,String celular,String endereco,String numero,String compl,String cep,String cidade,String cargo,float salario) {
		this.id = id;
		this.nome = nome;
		this.rg = rg;
		this.cpf = cpf;
		this.dtNasc = dtNasc;
		this.telefone = telefone;
		this.celular = celular;
		this.endereco = endereco;
		this.numero = numero;
		this.compl = compl;
		this.cep = cep;
		this.cidade = cidade;
		this.cargo = cargo;
		this.salario = salario;
	}

	public long getId(){
		return this.id;
	}

	public void setId(long id){
		this.id = id;
	}

	public String getNome(){
		return this.nome;
	}

	public void setNome(String nome){
		this.nome = nome;
	}

	public String getRg(){
		return this.rg;
	}

	public void setRg(String rg){
		this.rg = rg;
	}

	public String getCpf(){
		return this.cpf;
	}

	public void setCpf(String cpf){
		this.cpf = cpf;
	}

	public Date getDtNasc(){
		return this.dtNasc;
	}

	public void setDtNasc(Date dtNasc){
		this.dtNasc = dtNasc;
	}

	public String getTelefone(){
		return this.telefone;
	}

	public void setTelefone(String telefone){
		this.telefone = telefone;
	}

	public String getCelular(){
		return this.celular;
	}

	public void setCelular(String celular){
		this.celular = celular;
	}

	public String getEndereco(){
		return this.endereco;
	}

	public void setEndereco(String endereco){
		this.endereco = endereco;
	}

	public String getNumero(){
		return this.numero;
	}

	public void setNumero(String numero){
		this.numero = numero;
	}

	public String getCompl(){
		return this.compl;
	}

	public void setCompl(String compl){
		this.compl = compl;
	}

	public String getCep(){
		return this.cep;
	}

	public void setCep(String cep){
		this.cep = cep;
	}

	public String getCidade(){
		return this.cidade;
	}

	public void setCidade(String cidade){
		this.cidade = cidade;
	}

	public String getCargo(){
		return this.cargo;
	}

	public void setCargo(String cargo){
		this.cargo = cargo;
	}

	public float getSalario(){
		return this.salario;
	}

	public void setSalario(float salario){
		this.salario = salario;
	}

}